import java.util.Arrays;

/**
 * Created by L.jp
 * Description:
 * User: 86189
 * Date: 2022-09-15
 * Time: 20:53
 */
//演示Arrays工具类的使用
public class TestArrays {
    public static void main (String[] args) {
        int[] array={1,2,4,3,6,5};
        //toString():转换成字符串输出
        System.out.println( Arrays.toString(array));
        //binarySearch():二分查找,找出指定数组中的指定元素对应的索引：
        //前提是先排序
        Arrays.sort( array );
        System.out.println(Arrays.binarySearch(array,6));
        
        //数组的负值
        int[] array2={2,3,5,7,8,9};
        //copyOf() :从旧的数组里复制指定长度的元素到新的数组里
        int[] newArr1=Arrays.copyOf( array2,4 );
        System.out.println(Arrays.toString( newArr1 ));
        //copyOfRange():复制旧的数组指定区间的元素到新的数组
        int[] newArr2=Arrays.copyOfRange( array2,1,4 );  //[1,4)-->1,2,3下标
        System.out.println(Arrays.toString( newArr2 ));
        
        //值的比较
        int[] array3={1,2,3,4};
        int[] array4={1,2,3,4};
        //查看源码可知，Arrays重写了equals方法，equals默认是引用比较，但是Arrays重写了equals方法，把引用比较变成了值比较
        //所以只要两个数组元素相等那么就为true,如果两个都为null,那么也是相等的
        System.out.println(Arrays.equals( array3,array4 ));
        
        //数组的填充
        int[] array5=new int[10];
        Arrays.fill( array5,5 );
        System.out.println(Arrays.toString( array5 ));
    }
    
}
